1. Field of the Invention
The present invention generally relates to a method and a system for generating a function design chart. More particularly, the invention is concerned with a method and a system for converting or translating with the aid of a computer a data flow description expressed in terms of plural process elements and data lines interconnecting the process elements to a function design chart showing an outline of the processing (i.e. major processing functions).
2. Description of the Related Art
As a system for automatically generating a flow chart from a source program, there is known, for example, a SEWB (an abbreviation of Software Engineering Work Bench) system reported "Concept and Functions of SEWB" "HITACHI REVIEW", Vol. 70, No. 2, pp. 7-14 (Feb., 1988). The SEWB system incorporates a function for converting or translating a procedure language such as FORTRAN, PL/I or the like into a problem analysis diagram (also referred to simply as PAD). A statement of the source program is described as one process box in the PAD chart obtained as the output of the SEWB system, that is placed at a corresponding position on a detailed design document assuming the form of the PAD chart.
For more particulars, reference is made to FIG. 18 of the accompanying drawings. When a source program 80 described in the PL/I and containing the statements labeled line Nos. 001 to 009 is inputted to the SEWB system, the latter then outputs a detailed design document containing individual process boxes 81 to 89 in the form of a PAD chart, wherein a process box 8N corresponds to a statement 00N (where N represents a number of 1 to 9) of the source program 80.
In this conjunction, when a function design chart showing only the outline of processing is to be obtained from the source program 80 in the form in which procedure statements of work data or the like (e.g. statement of line No. 002) is eliminated, there may be conceived such methods as described below.
As a first method, steps of a source program are chosen and designated as to whether or not the step is the object for description of the function design chart for every step, Wherein only the steps designated as the object for description are converted to the process boxes. By way of example, the steps for write and decision processes (e.g. statements identified by the line Nos. 003, 006 and 009 in FIG. 18) are designated as the object for description while the other statements are designated as being not the object for description.
According to this method, the source program 80 is converted to a function design chart containing three process blocks 91 to 93 corresponding to the statements 003, 006 and 009, respectively, as shown in FIG. 20. It is however noted that in the function design chart obtained according to this method, the process box 91 has a variable AA while the process boxes 92 and 93 branched from this decision box have the same contents, respectively, representing a defect which makes the function design chart unusable for practical applications.
For eliminating the defect mentioned above, it is required that when a process statement to be described (or alternatively a label attached to a corresponding process box on the function design chart) includes a variable as the program work data, the variable is replaced by the name of data or field in which the variable is placed, to thereby display in such a manner as shown in FIG. 21. However, when such translation for the display is to be effectuated in a program described in a procedure language, it is necessary to search where the variable AA used in the statement 003 is placed by tracing back the flow of execution of the program. For realizing the tracing-back search mentioned above, the source program must actually be made to run with all the branching conditions being taken into consideration. This involves an indispensably enormous amount of consumption in machine time.